#light
#load "problems.fs"
#load "primitives.fs"
open LambdaMop.Problems
open LambdaMop.Primitives


dominatedCompare [1;1;1;3] [1;1;4;3] |> printfn "%i"
dominatedCompare [1;2] [1;1] |> printfn "%i"
dominatedCompare [1;1] [1;2] |> printfn "%i"
dominatedCompare [1.;1.] [1.;1.] |> printfn "%i"
dominatedCompare [2.;2.] [2.;2.] |> printfn "%i"
dominatedCompare [3.;2.] [3.;4.] |> printfn "%i"
dominatedCompare [3.;2.] [3.] |> printfn "%i"


open System.Collections.Generic

let dominatedRandomSearch (mop:MOP<'a,'b>) n =
    let list = new NonDominatedList<'a,'b>(mop.functions)
    for i in {1..n} do
        list.Add(mop.generator()) |> ignore
    list.Value


fun () -> dominatedRandomSearch (zdt1 30) 10


System.Console.ReadLine();